﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="budgetDataSet" targetNamespace="http://tempuri.org/budgetDataSet.xsd" xmlns:mstns="http://tempuri.org/budgetDataSet.xsd" xmlns="http://tempuri.org/budgetDataSet.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
  <xs:annotation>
    <xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
      <DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
        <Connections>
          <Connection AppSettingsObjectName="Settings" AppSettingsPropertyName="budgetConnectionString" ConnectionStringObject="" IsAppSettingsProperty="true" Modifier="Assembly" Name="budgetConnectionString (Settings)" PropertyReference="ApplicationSettings.Budget.Properties.Settings.GlobalReference.Default.budgetConnectionString" Provider="System.Data.OleDb" />
        </Connections>
        <Tables>
          <TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="tblCategoryExpenseTableAdapter" GeneratorDataComponentClassName="tblCategoryExpenseTableAdapter" Name="tblCategoryExpense" UserDataComponentName="tblCategoryExpenseTableAdapter">
            <MainSource>
              <DbSource ConnectionRef="budgetConnectionString (Settings)" DbObjectName="tblCategoryExpense" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="FillExpenseDataTable" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetExpenseDataTable" GeneratorSourceName="FillExpenseDataTable" GetMethodModifier="Public" GetMethodName="GetExpenseDataTable" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetExpenseDataTable" UserSourceName="FillExpenseDataTable">
                <DeleteCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="false">
                    <CommandText>DELETE FROM `tblCategoryExpense` WHERE ((`ID` = ?) AND ((? = 1 AND `Category` IS NULL) OR (`Category` = ?)))</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="Original_ID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Original" />
                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_Category" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="Category" SourceColumnNullMapping="true" SourceVersion="Original" />
                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="Original_Category" Precision="0" ProviderType="VarWChar" Scale="0" Size="0" SourceColumn="Category" SourceColumnNullMapping="false" SourceVersion="Original" />
                    </Parameters>
                  </DbCommand>
                </DeleteCommand>
                <InsertCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="false">
                    <CommandText>INSERT INTO `tblCategoryExpense` (`Category`) VALUES (?)</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="Category" Precision="0" ProviderType="VarWChar" Scale="0" Size="0" SourceColumn="Category" SourceColumnNullMapping="false" SourceVersion="Current" />
                    </Parameters>
                  </DbCommand>
                </InsertCommand>
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="true">
                    <CommandText>SELECT        ID, Category
FROM            tblCategoryExpense</CommandText>
                    <Parameters />
                  </DbCommand>
                </SelectCommand>
                <UpdateCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="true">
                    <CommandText>UPDATE       tblCategoryExpense
SET                Category = ?
WHERE        (ID = ?)</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="true" AutogeneratedName="Param1" ColumnName="Category" DataSourceName="tblCategoryExpense" DataTypeServer="DbType.StringFixedLength(255)" DbType="String" Direction="Input" ParameterName="Category" Precision="0" ProviderType="WChar" Scale="0" Size="255" SourceColumn="Category" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="false" AutogeneratedName="Param2" ColumnName="ID" DataSourceName="tblCategoryExpense" DataTypeServer="DbType.Int32" DbType="Int32" Direction="Input" ParameterName="Original_ID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Original" />
                    </Parameters>
                  </DbCommand>
                </UpdateCommand>
              </DbSource>
            </MainSource>
            <Mappings>
              <Mapping SourceColumn="ID" DataSetColumn="ID" />
              <Mapping SourceColumn="Category" DataSetColumn="Category" />
            </Mappings>
            <Sources />
          </TableAdapter>
          <TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="ExpensesForDatesTableAdapter" GeneratorDataComponentClassName="ExpensesForDatesTableAdapter" Name="ExpensesForDatesDataTable" UserDataComponentName="ExpensesForDatesTableAdapter">
            <MainSource>
              <DbSource ConnectionRef="budgetConnectionString (Settings)" DbObjectType="Unknown" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="true">
                    <CommandText>SELECT        tblExpenses.ID, tblExpenses.AccountID, tblExpenses.Category, tblExpenses.Company, tblExpenses.Amount, tblExpenses.Frequency, tblExpenses.[Date], 
                         tblExpenses.Description, tblCategoryExpense.ID AS Expr1, tblCategoryExpense.Category AS Expr2, tblCategoryExpense.Hidden
FROM            (tblExpenses INNER JOIN
                         tblCategoryExpense ON tblExpenses.Category = tblCategoryExpense.ID)
WHERE        (tblExpenses.[Date] &gt;= ?) AND (tblExpenses.[Date] &lt;= ?) 
ORDER BY tblExpenses.Category</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="true" AutogeneratedName="Param1" ColumnName="Date" DataSourceName="tblExpenses" DataTypeServer="DbType.Date" DbType="Date" Direction="Input" ParameterName="Date" Precision="0" ProviderType="Date" Scale="0" Size="0" SourceColumn="Date" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="true" AutogeneratedName="Param2" ColumnName="Date" DataSourceName="tblExpenses" DataTypeServer="DbType.Date" DbType="Date" Direction="Input" ParameterName="Date1" Precision="0" ProviderType="Date" Scale="0" Size="0" SourceColumn="Date" SourceColumnNullMapping="false" SourceVersion="Current" />
                    </Parameters>
                  </DbCommand>
                </SelectCommand>
              </DbSource>
            </MainSource>
            <Mappings>
              <Mapping SourceColumn="AccountID" DataSetColumn="AccountID" />
              <Mapping SourceColumn="Company" DataSetColumn="Company" />
              <Mapping SourceColumn="Amount" DataSetColumn="Amount" />
              <Mapping SourceColumn="Frequency" DataSetColumn="Frequency" />
              <Mapping SourceColumn="Date" DataSetColumn="Date" />
              <Mapping SourceColumn="Description" DataSetColumn="Description" />
              <Mapping SourceColumn="ID" DataSetColumn="ID" />
              <Mapping SourceColumn="Category" DataSetColumn="Category" />
              <Mapping SourceColumn="Expr1" DataSetColumn="Expr1" />
              <Mapping SourceColumn="Expr2" DataSetColumn="Expr2" />
              <Mapping SourceColumn="Hidden" DataSetColumn="Hidden" />
            </Mappings>
            <Sources>
              <DbSource ConnectionRef="budgetConnectionString (Settings)" DbObjectName="" DbObjectType="Unknown" GenerateShortCommands="true" GeneratorSourceName="UpdateQuery" Modifier="Public" Name="UpdateQuery" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="UpdateQuery">
                <UpdateCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="true">
                    <CommandText>UPDATE       tblExpenses
SET                Category = ?, Amount = ?, [Date] = ?, Description = ?, Company = ?
WHERE        (ID = ?)</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="true" AutogeneratedName="Param1" ColumnName="Category" DataSourceName="tblExpenses" DataTypeServer="DbType.Int32" DbType="Int32" Direction="Input" ParameterName="Category" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="Category" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="true" AutogeneratedName="Param2" ColumnName="Amount" DataSourceName="tblExpenses" DataTypeServer="DbType.Currency" DbType="Decimal" Direction="Input" ParameterName="Amount" Precision="19" ProviderType="Currency" Scale="0" Size="0" SourceColumn="Amount" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="true" AutogeneratedName="Param3" ColumnName="Date" DataSourceName="tblExpenses" DataTypeServer="DbType.Date" DbType="Date" Direction="Input" ParameterName="Date" Precision="0" ProviderType="Date" Scale="0" Size="0" SourceColumn="Date" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="true" AutogeneratedName="Param4" ColumnName="Description" DataSourceName="tblExpenses" DataTypeServer="DbType.StringFixedLength(255)" DbType="String" Direction="Input" ParameterName="Description" Precision="0" ProviderType="WChar" Scale="0" Size="255" SourceColumn="Description" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="true" AutogeneratedName="Param5" ColumnName="Company" DataSourceName="tblExpenses" DataTypeServer="DbType.StringFixedLength(255)" DbType="String" Direction="Input" ParameterName="Company" Precision="0" ProviderType="WChar" Scale="0" Size="255" SourceColumn="Company" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="false" AutogeneratedName="Param6" ColumnName="ID" DataSourceName="tblExpenses" DataTypeServer="DbType.Int32" DbType="Int32" Direction="Input" ParameterName="Original_ID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Original" />
                    </Parameters>
                  </DbCommand>
                </UpdateCommand>
              </DbSource>
            </Sources>
          </TableAdapter>
          <TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="getIncomeCategoriesTableAdapter" GeneratorDataComponentClassName="getIncomeCategoriesTableAdapter" Name="getIncomeCategories" UserDataComponentName="getIncomeCategoriesTableAdapter">
            <MainSource>
              <DbSource ConnectionRef="budgetConnectionString (Settings)" DbObjectName="tblCategoryIncome" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
                <DeleteCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="false">
                    <CommandText>DELETE FROM `tblCategoryIncome` WHERE ((`ID` = ?) AND ((? = 1 AND `Category` IS NULL) OR (`Category` = ?)))</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="Original_ID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Original" />
                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_Category" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="Category" SourceColumnNullMapping="true" SourceVersion="Original" />
                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="Original_Category" Precision="0" ProviderType="VarWChar" Scale="0" Size="0" SourceColumn="Category" SourceColumnNullMapping="false" SourceVersion="Original" />
                    </Parameters>
                  </DbCommand>
                </DeleteCommand>
                <InsertCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="false">
                    <CommandText>INSERT INTO `tblCategoryIncome` (`Category`) VALUES (?)</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="Category" Precision="0" ProviderType="VarWChar" Scale="0" Size="0" SourceColumn="Category" SourceColumnNullMapping="false" SourceVersion="Current" />
                    </Parameters>
                  </DbCommand>
                </InsertCommand>
                <SelectCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="true">
                    <CommandText>SELECT        tblCategoryIncome.*
FROM            tblCategoryIncome</CommandText>
                    <Parameters />
                  </DbCommand>
                </SelectCommand>
                <UpdateCommand>
                  <DbCommand CommandType="Text" ModifiedByUser="true">
                    <CommandText>UPDATE       tblCategoryIncome
SET                Category = ?
WHERE        (ID = ?)</CommandText>
                    <Parameters>
                      <Parameter AllowDbNull="true" AutogeneratedName="Param1" ColumnName="Category" DataSourceName="tblCategoryIncome" DataTypeServer="DbType.StringFixedLength(255)" DbType="String" Direction="Input" ParameterName="Category" Precision="0" ProviderType="WChar" Scale="0" Size="255" SourceColumn="Category" SourceColumnNullMapping="false" SourceVersion="Current" />
                      <Parameter AllowDbNull="false" AutogeneratedName="Param2" ColumnName="ID" DataSourceName="tblCategoryIncome" DataTypeServer="DbType.Int32" DbType="Int32" Direction="Input" ParameterName="Original_ID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Original" />
                    </Parameters>
                  </DbCommand>
                </UpdateCommand>
              </DbSource>
            </MainSource>
            <Mappings>
              <Mapping SourceColumn="ID" DataSetColumn="ID" />
              <Mapping SourceColumn="Category" DataSetColumn="Category" />
            </Mappings>
            <Sources />
          </TableAdapter>
        </Tables>
        <Sources />
      </DataSource>
    </xs:appinfo>
  </xs:annotation>
  <xs:element name="budgetDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="True" msprop:Generator_DataSetName="budgetDataSet" msprop:Generator_UserDSName="budgetDataSet">
    <xs:complexType>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="tblCategoryExpense" msprop:Generator_TableClassName="tblCategoryExpenseDataTable" msprop:Generator_TableVarName="tabletblCategoryExpense" msprop:Generator_TablePropName="tblCategoryExpense" msprop:Generator_RowDeletingName="tblCategoryExpenseRowDeleting" msprop:Generator_UserTableName="tblCategoryExpense" msprop:Generator_RowChangingName="tblCategoryExpenseRowChanging" msprop:Generator_RowEvHandlerName="tblCategoryExpenseRowChangeEventHandler" msprop:Generator_RowDeletedName="tblCategoryExpenseRowDeleted" msprop:Generator_RowEvArgName="tblCategoryExpenseRowChangeEvent" msprop:Generator_RowChangedName="tblCategoryExpenseRowChanged" msprop:Generator_RowClassName="tblCategoryExpenseRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="ID" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnID" msprop:Generator_ColumnPropNameInRow="ID" msprop:Generator_ColumnPropNameInTable="IDColumn" msprop:Generator_UserColumnName="ID" type="xs:int" />
              <xs:element name="Category" msprop:Generator_ColumnVarNameInTable="columnCategory" msprop:Generator_ColumnPropNameInRow="Category" msprop:Generator_ColumnPropNameInTable="CategoryColumn" msprop:Generator_UserColumnName="Category" minOccurs="0">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="255" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="ExpensesForDatesDataTable" msprop:Generator_TableClassName="ExpensesForDatesDataTableDataTable" msprop:Generator_TableVarName="tableExpensesForDatesDataTable" msprop:Generator_TablePropName="ExpensesForDatesDataTable" msprop:Generator_RowDeletingName="ExpensesForDatesDataTableRowDeleting" msprop:Generator_UserTableName="ExpensesForDatesDataTable" msprop:Generator_RowChangingName="ExpensesForDatesDataTableRowChanging" msprop:Generator_RowEvHandlerName="ExpensesForDatesDataTableRowChangeEventHandler" msprop:Generator_RowDeletedName="ExpensesForDatesDataTableRowDeleted" msprop:Generator_RowEvArgName="ExpensesForDatesDataTableRowChangeEvent" msprop:Generator_RowChangedName="ExpensesForDatesDataTableRowChanged" msprop:Generator_RowClassName="ExpensesForDatesDataTableRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="AccountID" msprop:Generator_ColumnVarNameInTable="columnAccountID" msprop:Generator_ColumnPropNameInRow="AccountID" msprop:Generator_ColumnPropNameInTable="AccountIDColumn" msprop:Generator_UserColumnName="AccountID" type="xs:int" minOccurs="0" />
              <xs:element name="Company" msprop:Generator_ColumnVarNameInTable="columnCompany" msprop:Generator_ColumnPropNameInRow="Company" msprop:Generator_ColumnPropNameInTable="CompanyColumn" msprop:Generator_UserColumnName="Company" minOccurs="0">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="255" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="Amount" msprop:Generator_ColumnVarNameInTable="columnAmount" msprop:Generator_ColumnPropNameInRow="Amount" msprop:Generator_ColumnPropNameInTable="AmountColumn" msprop:Generator_UserColumnName="Amount" type="xs:decimal" minOccurs="0" />
              <xs:element name="Frequency" msprop:Generator_ColumnVarNameInTable="columnFrequency" msprop:Generator_ColumnPropNameInRow="Frequency" msprop:Generator_ColumnPropNameInTable="FrequencyColumn" msprop:Generator_UserColumnName="Frequency" minOccurs="0">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="255" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="Date" msprop:Generator_ColumnVarNameInTable="columnDate" msprop:Generator_ColumnPropNameInRow="Date" msprop:Generator_ColumnPropNameInTable="DateColumn" msprop:Generator_UserColumnName="Date" type="xs:dateTime" minOccurs="0" />
              <xs:element name="Description" msprop:Generator_ColumnVarNameInTable="columnDescription" msprop:Generator_ColumnPropNameInRow="Description" msprop:Generator_ColumnPropNameInTable="DescriptionColumn" msprop:Generator_UserColumnName="Description" minOccurs="0">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="255" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="ID" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnID" msprop:Generator_ColumnPropNameInRow="ID" msprop:Generator_ColumnPropNameInTable="IDColumn" msprop:Generator_UserColumnName="ID" type="xs:int" minOccurs="0" />
              <xs:element name="Category" msprop:Generator_ColumnVarNameInTable="columnCategory" msprop:Generator_ColumnPropNameInRow="Category" msprop:Generator_ColumnPropNameInTable="CategoryColumn" msprop:Generator_UserColumnName="Category" type="xs:int" minOccurs="0" />
              <xs:element name="Expr1" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnExpr1" msprop:Generator_ColumnPropNameInRow="Expr1" msprop:Generator_ColumnPropNameInTable="Expr1Column" msprop:Generator_UserColumnName="Expr1" type="xs:int" minOccurs="0" />
              <xs:element name="Expr2" msprop:Generator_ColumnVarNameInTable="columnExpr2" msprop:Generator_ColumnPropNameInRow="Expr2" msprop:Generator_ColumnPropNameInTable="Expr2Column" msprop:Generator_UserColumnName="Expr2" minOccurs="0">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="255" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="Hidden" msprop:Generator_ColumnVarNameInTable="columnHidden" msprop:Generator_ColumnPropNameInRow="Hidden" msprop:Generator_ColumnPropNameInTable="HiddenColumn" msprop:Generator_UserColumnName="Hidden" minOccurs="0">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="255" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="getIncomeCategories" msprop:Generator_TableClassName="getIncomeCategoriesDataTable" msprop:Generator_TableVarName="tablegetIncomeCategories" msprop:Generator_TablePropName="getIncomeCategories" msprop:Generator_RowDeletingName="getIncomeCategoriesRowDeleting" msprop:Generator_UserTableName="getIncomeCategories" msprop:Generator_RowChangingName="getIncomeCategoriesRowChanging" msprop:Generator_RowEvHandlerName="getIncomeCategoriesRowChangeEventHandler" msprop:Generator_RowDeletedName="getIncomeCategoriesRowDeleted" msprop:Generator_RowEvArgName="getIncomeCategoriesRowChangeEvent" msprop:Generator_RowChangedName="getIncomeCategoriesRowChanged" msprop:Generator_RowClassName="getIncomeCategoriesRow">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="ID" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnID" msprop:Generator_ColumnPropNameInRow="ID" msprop:Generator_ColumnPropNameInTable="IDColumn" msprop:Generator_UserColumnName="ID" type="xs:int" />
              <xs:element name="Category" msprop:Generator_ColumnVarNameInTable="columnCategory" msprop:Generator_ColumnPropNameInRow="Category" msprop:Generator_ColumnPropNameInTable="CategoryColumn" msprop:Generator_UserColumnName="Category" minOccurs="0">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="255" />
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">
      <xs:selector xpath=".//mstns:tblCategoryExpense" />
      <xs:field xpath="mstns:ID" />
    </xs:unique>
    <xs:unique name="getIncomeCategories_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
      <xs:selector xpath=".//mstns:getIncomeCategories" />
      <xs:field xpath="mstns:ID" />
    </xs:unique>
  </xs:element>
</xs:schema>